Conversation
|
Thank you, @franzpoeschel ! Were you able to reproduce/test this or do you need my help verifying the fix? |
| #ifdef __HIPCC__ | ||
| __host__ | ||
| #endif |
There was a problem hiding this comment.
The changes in other files but UniquePtrWithLambda seem a bit excessive to me.
Are you sure that fixing UniquePtrWithLambda, which is the only one deriving from UniquePtrWithLambda : public std::unique_ptr, ain't sufficient as a work-around?
There was a problem hiding this comment.
Ah, but your original issue was related to these iterators, I see #1754
There was a problem hiding this comment.
They appear a bit excessive since they revert another workaround (just putting the offending code into headers) and now apply a better slution. The second commit is the "actual" PR.
I was able to reproduce the issue on Frontier, I'll look up the compiler versions, but don't my key at hand right now for checking the build. |
…t device function) (openPMD#1754)" This reverts commit 257cf87.
for more information, see https://pre-commit.ci
db970a2 to
7a719b7
Compare
Declaring default constructors seems to make HIP compilers treat them as
__host__ __device__by default. This explicitly annotates the offending constructors as__host__.Reverts #1754 which worked around the same problem by pulling the constructors into headers.
Fixes #1797.
TODO: